Function.RegisterNamespace("xUnit.js.Attributes");

xUnit.js.Attributes.DataAttribute=function(data){
    // Public Members (Can't declare, this is global scope!)
    // this.Data

    // ctor
    function DataAttribute(data1,data2,data3,dataN){
        this.base("Data");
        if(!Object.IsType(Function,this.Target))throw new Error("xUnit.js.Attributes.DataAttribute.ctor: unable to locate attribute target.");
        this.Data=arguments.length==1&&Object.IsType(Array,arguments[0])?arguments[0]:Array.Copy(arguments);
        xUnit.js.Attributes.Engine.Instance.SetData(this.Target,this.Data);
    }
    return System.Script.DelayedConstructor(this,xUnit.js.Attributes.DataAttribute,DataAttribute,arguments);
}

xUnit.js.Attributes.DataAttribute.Inherit(System.Script.Attributes.Attribute);
